home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Collections: Scope
/
Scope Disk #078 (199x)(Scope PD)(US)[WB].zip
/
Scope Disk #078 (199x)(Scope PD)(US)[WB].adf
/
RxSlides
/
RxSlides.DOC
< prev
next >
Wrap
Text File
|
1989-06-30
|
6KB
|
154 lines
RxSlides
An IFF picture server controlled through ARexx
RxSlides is a background (load-and-stay-resident) program which can pop
up a picture upon command. It will also make a transition from one picture
to another, and has several types of transition.
RxSlides is based on a program called "Dissolve" that I found on
Amicus 15. The author of that program, Lee M. Robertson, ( PLINK: lmr )
wrote in his DOC file, "If someone was real ambitious they could do a
program like Dpslide that did a lot of different displays with a display
list." I guess I was "real ambitious", because that's one of the things
you can do with RxSlides. Because the commands to this program can be
written by an ARexx program, however, you can do much more powerful things
than just write a display list. For instance, you should be able to write
a program that will read the directory of a disk and display all the
pictures on it (assuming that you set up a filename convention to tell
which are pictures).
RxSlides has worked fine for me with 320 by 200 pictures. I can't
guarantee that bigger pictures will work, nor HAM pictures, but I don't
know for sure. It doesn't do well changing from one resolution to another --
the best I can say is that it stayed up when I asked for a bigger picture,
then showed the next 320 by 200 one squished onto the top half of the
screen!
Lee R. wrote that [dissolving one picture into another].."requires that the
new picture has the same attributes (size, colors, ham, etc.) as the current
picture, because you can't change the screen attributes between the pictures."
What I tried to do was close the screen and open a new one if the attributes
didn't match; but I wasn't 100% successful. I partially got around the
problem of colors by interpolating the color maps from the old picture into
the new one. This can give some pretty peculiar effects, so I suggest that
if you are developing a set of pictures yourself, you keep the palettes as
similar as possible between pictures. The color interpolation seems the
least disturbing with the "dissolve" transition (and the "zap" transition,
which hardly counts).
Unless you are running ARexx, RxSlides won't do a thing for you except
chew up some of your memory. If you have ARexx, create a rexx program file
something like this (say its name is CPix.rexx):
/* Charley slideshow */
address SLIDES
'trans 0'
'show df1:cluck'
'wait 25'
'trans 6'
'show df1:robots'
'wait 25'
'show df1:ghost4'
'wait 50'
'exit'
This is assuming that you have 320 x 200 IFF picture files called
"cluck", "robots", and "ghost4" on your df1: disk. Then do, from CLI
or Wshell,
>rexxmast
>RxSlides
then from Wshell
>CPix (or whatever your rexx program is)
or from CLI
>rx CPix
You should see the first picture appear on the screen, then dissolve
into the second, then dissolve into the third; then after another second
you will be back to the CLI screen.
Note that the Rexx address of this program is SLIDES. If you run two
copies of this at once, the address of the second is SLIDESA. If you
run a third, the address of the third should be SLIDESB, and so on to
SLIDESZ, but I haven't tried more than two.
Commands accepted:
show <filename> display the IFF picture in <filename>
speed <integer> controls the number of picture bits set
between successive "blit"s; 1280 is the
default.
wait <integer> wait that number of 1/50-th's of a second
before accepting another command. This
lets you control the speed of the slideshow.
failat <integer> gives you some control of how serious a problem
will cause the program to exit. Default is
21, which asks the program to try its best
not to exit until you ask it to. I recommend
that you leave this parameter alone.
index <integer> I think that this controls which of several
pseudo-random bit patterns is used for the
"dissolve" transition. No guarantees if you
try a number bigger than 15 here! I'm not
really sure what it does, and I recommend
that you leave this parameter alone.
trans <integer> Controls the type of transition between pictures.
I took LMR's suggestions about some types of
effects and have implemented the following:
trans 0 "zap" instantly pop up the new picture all at once.
trans 1 "twipe" wipe the new picture from top to bottom
trans 2 "bwipe" wipe the new picture from bottom to top
trans 3 "lwipe" wipe the new picture from left to right
trans 4 "rwipe" wipe the new picture from right to left
trans 5 "vblind" venetian blinds transition -- new picture
appears as lots of vertical lines that get wider
and wider. Try it, but I won't say "try it, you'll
like it".
trans 6 "dissolve" the good old original, and I think the
best for widely differing palettes.
front pops the picture screen to the front. Useful only
after --
back pushes the picture screen to the back. You could
do this before Rexx wants to write some output,
and then do a "front"; or maybe have two copies
of RxSlides running, and flip-flop between the
two pictures.
close close the picture window and screen, but leave
RxSlides running. That way you don't have to
get RxSlides off the disk again to run it, but
of course it is taking up memory.
exit stop the RxSlides background process
quit ditto
I'll now leave it up to your imagination to do something with this. I hope
to add more transition types and command syntax to use the names for the
transitions, not just the code numbers. I should also supply a stand-alone
program that sends a "quit" message to RxSlides, so that you can kill the
process without having Rexx running. Also, I want to do better with more
picture sizes, and to do a little more tidying up of the source coding. I'll
be happy to share the source sometime soon. Please write via US Mail with
bug reports, news of applications using this, or suggested enhancements.
Of course I wouldn't mind some shareware contributions, but since much of
this was Lee Robertson's work I won't make a big pitch. Hey -- somebody
who's on PLINK, leave some mail for him to tell him what happened to his
program!
Good Luck,
Dean Bandes
225 Cypress Street
Newton Centre, MA 02159
(617) 965-1268